package com.ccp.dev.workflow.model;

import com.ccp.dev.core.basic.model.BaseModel;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;

/**
 * 对象功能:流程定义引用 Model对象
 * 开发人员:fanruiqi
 * 创建时间:2019-08-01
 */
@XmlRootElement(name="referActDefModel")
@XmlAccessorType(XmlAccessType.NONE)
public class ReferActDefModel extends BaseModel<ReferActDefModel>
{
	/**
	 * @Field: serialVersionUID:
	 */
	private static final long serialVersionUID = -6303198451148356035L;

	//表名称
	public final static String TABLE_NAME="REFER_ACT_DEF_MODEL";

	/**
	 * 主键
	 */
	@XmlAttribute
	protected String id;
	/**
	 * 流程定义ID
 	 */
	@XmlAttribute
	protected String modelId;
	/**
	 * 引用流程定义Key
	 */
	@XmlAttribute
	protected String referModelKey;
	/**
	 * 流程定义名称
	 */
	@XmlAttribute
	protected String name;
	/**
	 * 流程状态
 	 */
	@XmlAttribute
	protected String state;
	/**
	 * 备注
	 */
	@XmlAttribute
	protected String remark;


	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
	/**
	 * 返回 流程定义ID
	 *
	 * @return
	 */
	public String getModelId() {
		return modelId;
	}
	/**
	 * @see java.lang.Object#hashCode()
	 */
	@Override
    public int hashCode(){
		return new HashCodeBuilder(-82280557, -700257973)
				.append(this.modelId).toHashCode();
	}

	/**
	 * @see java.lang.Object#toString()
	 */
	@Override
    public String toString(){
		return new ToStringBuilder(this)
				.append("modelId", this.modelId)
				.append("createTime", this.createTime)
				.append("state", this.state)
				.append("createBy", this.createBy)
				.append("updateBy", this.updateBy)
				.append("updateTime", this.updateTime)
				.append("referModelKey", this.referModelKey)
				.toString();
	}
	@Override
    public Object clone(){
		ReferActDefModel obj=null;
		try{
			obj=(ReferActDefModel)super.clone();
		}catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
		return obj;
	}
	public void setModelId(String modelId) {
		this.modelId = modelId;
	}

	public String getReferModelKey() {
		return referModelKey;
	}

	public void setReferModelKey(String referModelKey) {
		this.referModelKey = referModelKey;
	}

	public String getName() {
		return name;
	}

	public void Name(String name) {
		this.name = name;
	}

	public String getState() {
		return state;
	}

	public void setState(String state) {
		this.state = state;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
}